1. Field of the Invention
The present invention relates to the improvement of image quality, and more particularly, to a method and apparatus for effectively removing a blocking artifact occurring during block-based coding.
2. Description of the Related Art
In recent apparatuses for coding and transmitting video and/or audio signals or decoding the same, a block-based transform coding method is widely used. However, this block-based transform coding method leads to degradation of the image quality since an increase in the compression rate of an image causes a blocking artifact. This is because the loss of transform coefficients is not accurately compensated for in the course of independent quantization of each block during decoding.
In FIG. 1, a flowchart for illustrating a conventional de-blocking method, a decoded image obtained by decoding a block-based coded image is received in step S101, and the degree of a blocking artifact is estimated using pixels existing at the block boundary of the received decoded image, in step S102. Here, a typical blocking artifact estimation is made by using a value obtained by averaging the squared differences between pixel values at the blocking boundary. The magnitude of a blocking artifact is reduced by correcting the decoded image using an estimated value to determine the degree of the blocking artifact in step S102, and a corrected image is thus provided, in step S103. The degree of de-blocking with respect to the corrected image is determined in step S104. If the blocking artifact is satisfactorily removed, a de-blocked decoded image is output, in step S105. Otherwise, step S102 is performed again to repeat the above steps.
Conventional de-blocking methods can be classified into repetitive methods of repeating the de-blocking process as shown in FIG. 1, and non-repetitive methods. In repetitive de-blocking methods, there is a projection onto convex sets (POCS) method for obtaining a more natural image by repetitively projecting a decoded image onto convex sets by utilizing the advance knowledge of the smooth characteristics and coefficient range of an original image for post-processing. A duplicate transform method, for reducing the discontinuity at the block boundary by allowing a small amount of overlap between blocks during coding and decoding, is also a repetitive de-blocking method. These repetitive de-blocking methods have a high de-blocking performance, but require very large amounts of calculation such that it is difficult to use these methods for real time applications or realize them as hardware.
The discontinuity at the block boundary locally has a waveform similar to a staircase wave, and this denotes generation of many high-frequency components in the frequency domain. Therefore, a non-repetitive de-blocking method, such as, a low-pass filtering on boundaries for reducing the blocking artifact by removing high frequency components by low-pass filtering pixels on block boundaries, is very simple but does not have a high de-blocking performance.
To solve the above problems, it is an objective of the present invention to provide a high performance non-repetitive de-blocking method and apparatus which can be applied in real time.
It is another objective of the present invention to provide a de-blocking method and apparatus to prevent discontinuity between boundaries of a decoded image obtained from a block-based coded image while maintaining the edge and the texture.
Accordingly, to achieve the above objectives, there is provided a de-blocking method of de-blocking a decoded image obtained by decoding a block-based coded image, the method comprising the steps of: (a) obtaining a first correction value by filtering pixels on a block boundary of the received decoded image using a first filtering coefficient corresponding to the case when the decoded image is a planar surface; (b) obtaining a second correction value by filtering pixels on a block boundary of the received decoded image using a second filtering coefficient corresponding to the case when the decoded image is a complex surface; and (c) providing a corrected image by correcting the received decoded image using the first correction value when the decoded image is a planar surface or using the second correction value when the decoded image is a complex surface.
To achieve the above objectives, there is provided a de-blocking apparatus for de-blocking a decoded image obtained by decoding a block-based coded image, the apparatus comprising: a block classifier for determining whether the received decoded image is a planar surface or a complex surface; a first correction value calculator for calculating correction values for block boundary pixels by filtering the block boundary pixels of the received decoded image using a first filtering coefficient when the decoded image is a planar surface; an interpolator for providing first correction values for pixels on the block boundary and within a block by bilinearly interpolating the pixels within a block using the correction values for the block boundary pixels; a second correction value calculator for calculating second correction values for some block boundary pixels by filtering the block boundary pixels of the received decoded image using a second filtering coefficient when the decoded image is a complex surface; and a corrector for providing a corrected image by correcting the received decoded image using the first correction values when the received decoded image is a planar surface or the second correction values when the received decoded image is a complex surface.